package com.nimitz.modules.approval.mapper;


import com.nimitz.modules.approval.domain.ApprovalUser;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @ClassName ApprovalUserMapper
 * @Author FuCun
 * @Date 2021-08-17-14:45
 * @PackageName com.nimitz.modules.approval.mapper
 * @Description 审批人员-接口
 * @Version 1.0.0
 */
@Repository
public interface ApprovalUserMapper {

    /**
     * 查询所有审批人员信息（含搜索）
     *
     * @param approvalUser 审批人员
     * @return 审批人员集合
     */
    List<ApprovalUser> selectApprovalUserList(ApprovalUser approvalUser);

    /**
     * 新增审批人员
     *
     * @param approvalUser 审批人员
     * @return 结果
     */
    int insertApprovalUser(ApprovalUser approvalUser);

    /**
     * 修改审批人员信息
     *
     * @param approvalUser 审批人员
     * @return 结果
     */
    int updateApprovalUser(ApprovalUser approvalUser);

    /**
     * 删除审批人员
     *
     * @param userId 审批人员id
     * @return 结果
     */
    int deleteApprovalUserByUserId(Long userId);

    /**
     * 校验审批人员姓名是否唯一
     *
     * @param userName 审批人员姓名
     * @return 结果
     */
    ApprovalUser checkApprovalUserNameUnique(@Param("userName") String userName);
}
